package com.sybil.spa.dominio.r12;

import java.io.Serializable;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

@Entity
@Table(name = "XXLO_PLANTILLA_REEMBOLSOS_V")
public class ConceptoGasto implements Serializable {

   private Integer numero;
   private int categoria;
   private String concepto;
   private String impuesto;
   private String empresa;

   public ConceptoGasto() {
   }

   public ConceptoGasto(Integer numero) {
      this.numero = numero;
   }

   @Id
   @Basic(optional = false)
   @NotNull
   @Column(name = "PARAMETER_ID")
   public Integer getNumero() {
      return numero;
   }

   @Basic(optional = false)
   @NotNull
   @Column(name = "EXPENSE_REPORT_ID")
   public int getCategoria() {
      return categoria;
   }

   @Basic(optional = false)
   @NotNull
   @Size(min = 1, max = 40)
   @Column(name = "CONCEPTO")
   public String getConcepto() {
      return concepto;
   }

   @Basic(optional = false)
   @NotNull
   @Size(min = 1, max = 30)
   @Column(name = "VAT_CODE")
   public String getImpuesto() {
      return impuesto;
   }

   @Basic(optional = false)
   @NotNull
   @Size(min = 1, max = 240)
   @Column(name = "UO")
   public String getEmpresa() {
      return empresa;
   }

   public void setNumero(Integer numero) {
      this.numero = numero;
   }

   public void setConcepto(String concepto) {
      this.concepto = concepto;
   }

   public void setCategoria(int categoria) {
      this.categoria = categoria;
   }

   public void setImpuesto(String impuesto) {
      this.impuesto = impuesto;
   }

   public void setEmpresa(String empresa) {
      this.empresa = empresa;
   }

   @Override
   public int hashCode() {
      int hash = 0;
      hash += (numero != null ? numero.hashCode() : 0);
      return hash;
   }

   @Override
   public boolean equals(Object object) {
      if (!(object instanceof ConceptoGasto)) {
         return false;
      }
      ConceptoGasto other = (ConceptoGasto) object;
      if ((this.numero == null && other.numero != null) || (this.numero != null && !this.numero.equals(other.numero))) {
         return false;
      }
      return true;
   }

   @Override
   public String toString() {
      return "ConceptoGasto[ numero=" + numero + " ]";
   }
}
